/*常规清零*/
*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body{
    font-family: 'Poppins', sans-serif;
}

.wave{
    position: fixed;/*相对于视口（viewport，浏览器窗口）进行偏移*/
    height: 100%;
    left: 0;
    bottom: 0;
    z-index: -1;/*设置wave在-1层*/
}

.container{
    width: 100vw;
    height: 100vh;/*vh: 相对于视窗的高度, 视窗被均分为100单位的vh; */
    display: grid;/*容器采用网格布局，方便使用响应式布局*/
    /*定义每一列的列宽，使用repeat(重复的次数,重复的值)函数简化重复的值。创建列宽相同的两列*/
    grid-template-columns: repeat(2,1fr);
    grid-gap: 7rem;/*设置行间距，列间距*/
    padding: 0 2rem;
}

.img{
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.img img{
	width: 500px;
}

.login-container{
	display: flex;
	align-items: center;
	text-align: center;
}

form{
	width: 360px;
}

.avatar{
	width: 100px;
}

form h2{
	font-size: 2.9rem;
	text-transform: uppercase;
	margin: 15px 0;
	color: #333;
}

.input-div{
	position: relative;/*相对于默认位置（即static时的位置）进行偏移*/
	display: grid;
	grid-template-columns: 7% 93%;/*图标，输入框*/
	margin: 25px 0;
	padding: 5px 0;
	border-bottom: 2px solid #d9d9d9;
}

.input-div:before, .input-div:after{
	content: '';
	position: absolute;/*相对于上级元素（一般是父元素）进行偏移*/
	bottom: -2px;
	width: 0;
	height: 2px;
	background-color: #38d39f;
	transition: .3s;
}

.input-div:after{
	right: 50%;
}

.input-div:before{
	left: 50%;
}
/*聚焦时图标的样式*/
.input-div.focus .i i{
	color: #38d39f;
}
/*聚焦时输入框小标题的样式*/
.input-div.focus div h5{
	top: -5px;
	font-size: 15px;
}

.input-div.focus:after, .input-div.focus:before{
	width: 50%;
}

.input-div.one{
	margin-top: 0;
}
.input-div.two{
	margin-bottom: 4px;
}

.i{
	display: flex;
	justify-content: center;
	align-items: center;
}

.i i{
	color: #d9d9d9;
	transition: .3s;
}

.input-div > div{
    position: relative;/*相对于默认位置（即static时的位置）进行偏移*/
    height: 45px;
}

.input-div > div h5{
	position: absolute;/*相对于上级元素（一般是父元素）进行偏移*/
	left: 10px;
	top: 50%;
	transform: translateY(-50%);/*聚焦时提示字上移*/
	color: #999;
	font-size: 18px;
	transition: .3s;
}
.input{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border: none;
	outline: none;
	background: none;
	padding: 0.5rem 0.7rem;
	font-size: 1.2rem;
	font-family: 'Poppins', sans-serif;
	color: #555;
}

a{
    display: block;
    text-align: right;
    text-decoration: none;
    color: #999;
    font-size: 0.9rem;
    transition: .3s;
}

a:hover{
    color: #38d39f;
}

.btn{
    display: block;
    width: 100%;
    height: 50px;
    border-radius: 25px;
    margin: 1rem 0;
    font-size: 1.2rem;
    outline: none;
    border: none;
    background-image: linear-gradient(to right,#32be8f,#38d39f,#32be8f);
    cursor: pointer;
    color: #fff;
	text-transform: uppercase;
    font-family: 'Poppins', sans-serif;
    background-size: 200%;
    transition: .5s;
}
.btn:hover{
    background-position: right;
}


@media screen and (max-width: 1050px){
	.container{
		grid-gap: 5rem;
	}
}

@media screen and (max-width: 1000px) {
	form {
		width: 290px;
	}
	form h2 {
		font-size: 2.4rem;
		margin: 8px 0;
	}
	.img img{
		width: 400px;
	}
}

@media screen and (max-width: 900px){
	.img{
		display: none;
	}
	.container{
		grid-template-columns: 1fr;
	}
	.wave{
		display: none;
	}
	.login-container{
		justify-content: center;
	}
}